<script setup lang="ts">
// 接收父组件传过来的参数
defineProps({
  // xlink:href属性值的前缀
  prefix: {
    type: String,
    default: '#icon-',
  },
  // 提供使用的图标名字
  name: String,
  // 接收父组件传递颜色
  color: {
    type: String,
    default: '',
  },
  width: {
    type: String,
    default: '16px',
  },
  height: {
    type: String,
    default: '16px',
  },
})
</script>

<template>
  <!--    svg:图标外层容器节点，内部需要与use标签结合使用-->
  <svg :style="{ width, height }">
    <!--      xlink:href执行用哪一个图标，图标位置有约定，属性值务必#icon-图标文件名字-->
    <!--      fill不生效可能 源文件中有fill设置了颜色-->
    <use :xlink:href="prefix + name" :fill="color"></use>
  </svg>
</template>

<style scoped lang="scss"></style>
